10 | 您所在的位置:网站首页 › ansible 官方文档 › 10 |
1 Ansible
1.1 Ansible简介
Ansible是基于Python开发的配置工具。该工具使用SSH(Secure Shell)协议与网络设备建立连接,实现对网络设备的集中配置管理。 1.1.1 Ansible网络架构如图1-1所示,Ansible系统由管理端和设备端组成。 图1-1 Ansible网络架构
· 管理端(Manager):指安装了Ansible环境的主机。关于Ansible软件的安装,请参见Ansible的官方网站。 Ansible管理端支持的远程配置包括创建VLAN等,具体以Comware V7 Python库中支持的业务模块为准。 · 设备端(Device):设备端仅需支持作为SSH服务器,无需安装任何客户端代理软件。设备端和管理端建立SSH连接后,自动执行管理端下发的命令。 H3C设备支持作为Ansible系统的设备端。 1.1.2 Ansible工作机制Ansible的工作机制为: (1) 在管理端上编辑配置文件。 (2) 管理端和设备端建立SSH连接。管理端为SSH客户端,设备端为SSH服务器。 (3) 管理端给单个或多个设备下发配置命令。 (4) 设备端自动执行管理端下发的命令来完成配置。 1.2 Ansible配置准备配置Ansible功能前,用户需要先配置如下功能: · 手工配置设备的系统时间与管理端一致,或配置设备与管理端之间使用NTP/PTP进行时钟同步,否则可能导致双方无法互通。关于时钟同步的详细配置请参见“基础配置指导”中的“设备管理”,以及“网络管理和监控配置指导”中的“NTP”和“PTP”。 · 在设备上配置SSH服务器功能,使管理端能通过SSH连接向设备下发命令。关于SSH服务器的详细配置,请参见“安全配置指导”中的“SSH”。 1.3 Ansible典型配置举例 1.3.1 Ansible基本组网配置举例 1. 组网需求如图1-2所示,设备开启SSH服务器功能,Ansible管理端通过SSH连接来远程配置设备。 2. 组网图图1-2 Ansible组网图 3. 配置准备 (1) 配置设备与管理端的IP地址,确保它们之间路由可达。 (2) 配置设备与管理端之间使用手工方式或NTP/PTP进行时钟同步。 (3) 配置设备作为SSH服务器。 # 生成本地密钥对。关于本地密钥对的详细配置,请参见“安全配置指导”中的“SSH”。 # 创建本地用户abc,配置该用户的密码,授权用户角色为network-admin,用户可以使用的服务为SSH、HTTP和HTTPS。 system-view [Device]local-user abc [Device-luser-manage-abc] password simple 123456TESTplat&! [Device-luser-manage-abc] authorization-attribute user-role network-admin [Device-luser-manage-abc] service-type ssh http https [Device-luser-manage-abc] quit # 开启NETCONF over SSH服务器功能。 [Device] netconf ssh server enable # 设置SSH客户端登录用户线的认证方式为AAA认证,用户角色为network-admin。 [Device] line vty 0 63 [Device-line-vty0-63] authentication-mode scheme [Device-line-vty0-63] user-role network-admin [Device-line-vty0-63] quit # 开启Stelnet服务器功能。 [Device] ssh server enable # 配置SSH用户abc的服务类型为all(包括scp、sftp、stelnet和netconf四种服务类型),认证方式为password认证。 [Device] ssh user abc service-type all authentication-type password # 开启SFTP/SCP服务器功能。 ¡ 对于支持SFTP的设备,开启SFTP服务器功能。 [Device] sftp server enable ¡ 对于不支持SFTP的设备,开启SCP服务器功能。 [Device] scp server enable 4. 配置步骤在管理端安装Ansible环境,并编写配置脚本,下发配置命令。具体操作请参考相关文档。
|
CopyRight 2018-2019 实验室设备网 版权所有 |